package models.common.bean;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Transient;

import common.constants.ConfConst;
import common.constants.Constants;
import common.utils.CropImage;
import common.utils.Security;

/**
 * 商票债权页面显示bean
 * 
 * @author xiaojun
 * @version 2017-4-20 上午10:55:05
 */
@Entity
public class TicketRights implements Serializable {

	@Id
	public long id;
	/** 债权人联系人邮箱 */
	public String contact_email;
	/** 债权人联系人电话 */
	public String contact_mobile;
	/** 债权人联系人姓名 */
	public String contact_name;
	/** 债权人联系人地址 */
	public String contact_addr;
	/** 债权金额 */
	public double creditor_money;
	/** 债权人全称 */
	public String creditor_name;
	/** 合同名称和编号 */
	public String contract_name_code;
	/** 合同账期（天） */
	public int contract_datetime;
	/** 账龄（已欠款天数） */
	public int ageing;
	/** 剩余债务金额 */
	public double rest_debt_money;
	/** 登记人id */
	public long register_id;
	
	
	/** 债权人用户id */
	public long company_id;
	
	/** 债务企业id */
	public long debt_com_id;

	/**加密ID*/
	@Transient
	public String debtComId;

	public String getDebtComId() {
		
		return Security.addSign(this.debt_com_id, Constants.BID_ID_SIGN, ConfConst.ENCRYPTION_KEY_DES);
	}
	
	/**加密ID*/
	@Transient
	public String companyId;

	public String getCompanyId() {
		
		return Security.addSign(this.company_id, Constants.BID_ID_SIGN, ConfConst.ENCRYPTION_KEY_DES);
	}
	/** 债务人全称 */
	public String debt_person_name;
	/** 债务金额 */
	public double debt_money;
	/** 债务人联系人姓名 */
	public String debt_name;
	/** 债务人联系人电话 */
	public String debt_mobile;
	/** 债务人联系人地址 **/
	public String debt_contact_name_addr;
	/** 债务人联系人邮箱 **/
	public String debt_contact_email;

	/** 登记时间 */
	public Date checkin_time;
	/** 结算日期 **/
	public Date statement_time;
	/** 登记商票id **/
	public Long commer_paper_id;
	
	/** 商票金额 **/
	public Double paper_money;
	/** 开票时间 */
	public Date paper_create_time;
	/** 到期时间 */
	public Date paper_expire_time;
	/** 票号 */
	public String bill_code;
	/** 开户账号 **/
	public String account_num;
	/** 开户银行 **/
	public String account_bank;
	/** 付款人 **/
	public String drawee;

	/** 商票正面图片 **/
	public String paper_pic_on;
	/** 商票反面图片 **/
	public String paper_pic_under;
	
	@Transient
	public List papersList;
	public List getPapersList(){
		//papersList=
		return pablist;
		
	}
	
	/** 银行流水图片 */
	public String pic_addr_bank;
	/** 合同图片 */
	public String pic_addr_pact;
	/** 发票图片 */
	public String pic_addr_bill;
	/** 出入账单图片 */
	public String pic_addr_debt;
	/** 其他资料图片 */
	public String pic_addr_other;

	// 合同图片解析字段
	@Transient
	public List paplist ;
	
	// 发票图片字段解析
	@Transient
	public List pablist ;
	// 出入账单图片字段解析
	@Transient
	public List padlist ;
	// 银行流水图片字段解析
	@Transient
	public List paklist ;
	// 其他资料图片
	@Transient
	public List paolist ;

	
	
	
	/**
	 * @return the paplist
	 */
	public List getPaplist() {
		return getList(pic_addr_pact);
	}
	/**
	 * @return the pablist
	 */
	public List getPablist() {
		return getList(pic_addr_bank);
	}
	/**
	 * @return the padlist
	 */
	public List getPadlist() {
		return getList(pic_addr_debt);
	}


	/**
	 * @return the paklist
	 */
	public List getPaklist() {
		return getList(pic_addr_bank);
	}


	/**
	 * @return the paolist
	 */
	public List getPaolist() {
		return getList(pic_addr_other);
	}
	/**
	 * 解析图片地址
	 * @param pic
	 * @return
	 */
	public List getList(String pic){
		List picList=new ArrayList();
		if(pic!=null||!"".equals(pic)){
			try {
				picList=CropImage.getParsing(pic);
			} catch (Exception e) {
				
			}
		}
		return picList;
	}
}
